Testing of software prior to its commercial release typically ensures that the software is free of many of the bugs, problems, performance issues, etc. therein. In particular, after a new version of software code has been developed, system level testing determines its effect (performance, bugs, etc.) on the system including other parts of the software, hardware, etc.
An analysis of the performance (e.g., time of execution) between two different versions of software may determine whether the hardware platform needs to be upgraded to preclude a degradation in performance. A conventional approach typically executes one version of the software on a hardware platform and then executes a second version of the software on the same hardware platform. However, this approach may not provide accurate performance analysis of the two versions of the software because the configurations may have changed between times of execution of the two different tests. For example, the hardware platform may have been modified between tests, or the hardware platform may have been executing a maintenance activity during one test that is not executing during the second test. Moreover, new firmware may have been installed, and/or the network may be processing heavier/lighter amounts of traffic. Furthermore, the tests may include accesses to a database. Accordingly, the first test may create new data in the database. The second test may, therefore, be slower because of the traversal of the new data created by the first test.